package com.lanchetech.common.enums;

import lombok.Getter;

@Getter
public enum TradeTypeEnum {
    // 收支类型 0 收入 1 支出
    PRODUCT((byte) 0, (byte) 0, "商品佣金"),
    CONSUME((byte) 1, (byte) 0, "消费佣金"),
    SECOND_PRODUCT((byte) 2, (byte) 0, "商品二级佣金"),
    SHARE((byte) 3, (byte) 0, "分享奖励"),
    SERVICE((byte) 4, (byte) 0, "团队服务奖"),

    MEMBER_BONUS((byte) 5, (byte) 0, "会员广告补贴"),
    PARTNER_BONUS((byte) 6, (byte) 0, "合伙人广告补贴"),
    SHAREHOLDER_BONUS((byte) 7, (byte) 0, "股东广告补贴"),

    MEMBER_SHARE_COMMISSION((byte) 8, (byte) 0, "会员直推业绩佣金"),
    PARTNER_SHARE_COMMISSION((byte) 9, (byte) 0, "合伙人直推业绩佣金"),
    SHAREHOLDER_SHARE_COMMISSION((byte) 10, (byte) 0, "股东直推业绩佣金"),

    PARTNER_GROUP_COMMISSION((byte) 11, (byte) 0, "合伙人服务奖"),
    SHAREHOLDER_GROUP_COMMISSION((byte) 12, (byte) 0, "董事个人直属团队发展业绩奖励佣金"),

    MEMBER_L2_DIVIDENDS((byte) 13, (byte) 0, "主管分红"),
    MEMBER_L3_DIVIDENDS((byte) 14, (byte) 0, "经理分红"),
    MEMBER_L4_DIVIDENDS((byte) 15, (byte) 0, "总监分红"),

    PARTNER_L2_DIVIDENDS((byte) 16, (byte) 0, "主管分红"),
    PARTNER_L3_DIVIDENDS((byte) 17, (byte) 0, "经理分红"),
    PARTNER_L4_DIVIDENDS((byte) 18, (byte) 0, "股东总红"),

    SHAREHOLDER_L2_DIVIDENDS((byte) 19, (byte) 0, "副总裁分红"),
    SHAREHOLDER_L3_DIVIDENDS((byte) 20, (byte) 0, "总裁分红"),
    SHAREHOLDER_L4_DIVIDENDS((byte) 21, (byte) 0, "股东分红"),

    SHOP_COMMISSION((byte) 22, (byte) 0, "单店分红"),

    MEMBER_L4_BONUS((byte) 23, (byte) 0, "晋级董事奖励(元)"),
    PARTNER_L4_BONUS((byte) 24, (byte) 0, "晋级股东奖励(元)"),
    SHAREHOLDER_L4_BONUS((byte) 25, (byte) 0, "晋级股东奖励(弃)"),

    COURIER_COMMISSION((byte) 26, (byte) 0, "省市区快递收件费"),
    SHAREHOLDER_INCOME_COMMISSION((byte) 27, (byte) 0, "董事收入提点"),
    REWARD_QUEUE_COMMISSION((byte) 28, (byte) 0, "免单补贴"),
    SHOP_ORDER((byte) 29, (byte) 0, "商家订单收入"),
    PROVINCE_DIVIDENDS((byte) 30, (byte) 0, "省级代理区域分红"),
    CITY_DIVIDENDS((byte) 31, (byte) 0, "市级代理区域分红"),
    AREA_DIVIDENDS((byte) 32, (byte) 0, "区级代理区域分红"),

    PROVINCE_REWARD_QUEUE_COMMISSION((byte) 33, (byte) 0, "省级代理免单补贴"),
    CITY_REWARD_QUEUE_COMMISSION((byte) 34, (byte) 0, "市级代理免单补贴"),
    AREA_REWARD_QUEUE_COMMISSION((byte) 35, (byte) 0, "区级代理免单补贴"),

    SHOP_RECOMMEND_BONUS((byte) 36, (byte) 0, "推荐商家业绩佣金"),
    MANAGE_ADD((byte) 37, (byte) 0, "管理员赠送收入"),

    PARTNER_RECOMMEND_PARTNER_COMMISSION((byte) 38, (byte) 0, "合伙人推荐合伙人佣金"),
    SHAREHOLDER_RECOMMEND_PARTNER_COMMISSION((byte) 39, (byte) 0, "运营中心推荐合伙人佣金"),
    AREA_PARTNER_COMMISSION((byte) 40, (byte) 0, "区域中心发展合伙人佣金"),
    ANCHOR_COMMISSION((byte) 41, (byte) 0, "主播带货佣金"),
    PARTNER_ANCHOR_COMMISSION((byte) 42, (byte) 0, "合伙人享受主播收入佣金"),
    SHAREHOLDER_ANCHOR_COMMISSION((byte) 43, (byte) 0, "运营中心享受主播收入佣金"),
    AREA_ANCHOR_COMMISSION((byte) 44, (byte) 0, "区域中心享受主播收入佣金"),
    PARTNER_RANK_REWARD((byte) 45, (byte) 0, "合伙人排行奖励"),
    BOSS_INVITE_COMMISSION((byte) 47, (byte) 0, "老板推荐佣金"),
    POINT_TO_CARD_POINT((byte) 48, (byte) 1, "转换成嗨币支出"),
    MEMBER_GROUP_COMMISSION((byte) 49, (byte) 0, "会员服务奖"),
    DIRECTOR_COMMISSION((byte) 50, (byte) 0, "联合创始人分红"),
    PARTNER_GET_FROM_MEMBER((byte) 51, (byte) 0, "合伙人享受会员直推收入"),
    SHAREHOLDER_GET_FROM_PARTNER_SALE((byte) 52, (byte) 0, "下级合伙人销售后上级运营中心的奖励"),
    SHAREHOLDER_GET_FROM_SHAREHOLDER_SALE((byte) 53, (byte) 0, "下级运营中心销售后上级运营中心的奖励"),
    STATIC_DIVIDEND((byte) 54, (byte) 0, "活动补贴"),
    PARTNER_GET_FROM_PARTNER_SALE((byte) 55, (byte) 0, "合伙人直推收入"),
    MEMBER_L2_SHARE_COMMISSION((byte) 56, (byte) 0, "主管直推佣金"),
    MEMBER_L2_FROM_MEMBER_L2_SALE((byte) 57, (byte) 0, "主管直推收入"),
    MEMBER_L2_SERVICE_SALE((byte) 58, (byte) 0, "主管服务奖"),
    COMPANY_COMMISSION((byte) 59, (byte) 0, "分公司直推佣金"),
    COMPANY_GROUP_COMMISSION((byte) 60, (byte) 0, "分公司团队业绩佣金"),
    SHAREHOLDER_GROUP_COMMISSION2((byte) 61, (byte) 0, "合伙人团队业绩佣金"),
    REWARD_WELFARE((byte) 62, (byte) 0, "释放福利补贴佣金"),
    LOVE_COMMISSION((byte) 63, (byte) 0, "爱心奖"),
    THANKFUL_COMMISSION((byte) 64, (byte) 0, "感恩奖"),
    VIP_CHANCE_COMMISSION((byte) 65, (byte) 0, "VIP会员佣金机会奖励"),
    PARTNER_SPU_COMMISSION((byte) 66, (byte) 0, "商品差价"),
    PARTNER_PURCHASE_COMMISSION((byte) 67, (byte) 0, "小店进货业绩佣金"),
    RUSH_SUCCESS_COMMISSION((byte) 68, (byte) 0, "团队直推抢购免单成功业绩收入"),
    DIRECT_RECOMMEND_COMMISSION((byte) 69, (byte) 0, "直推佣金加速释放福利补贴"),

    WITHDRAW((byte) 101, (byte) 1, "提现支出"),
    LOTTERY((byte) 102, (byte) 0, "抽奖红包收入"),
    MANAGE_SUB((byte) 103, (byte) 1, "管理员扣除减少"),
    ;

    private Byte tradeType;
    private Byte type;
    private String remark;

    TradeTypeEnum(Byte tradeType, Byte type, String remark) {
        this.tradeType = tradeType;
        this.type = type;
        this.remark = remark;
    }

    public static TradeTypeEnum getByTradeType(Byte tradeType) {
        for (TradeTypeEnum item : TradeTypeEnum.values()) {
            if (item.getTradeType().equals(tradeType)) {
                return item;
            }
        }
        return null;
    }
}
